<template>

</template>

<script>
	export default {
		data() {
			return {
				token: ''

			}
		},
		onLoad() {

			this.goLogin()
		},
		onShow() {
			this.getToken()
			// this.init()

			// this.ErpUserTypeText = this.ErpUserType
			// uni.getSystemInfo({
			// 	success: function(res) {
			// 		var type = false
			// 		if (res.host || res.platform == 'devtools') {} else {
			// 			type = true
			// 		}
			// 		uni.setStorageSync('platform', type);
			// 	}
			// });


		},
		onLaunch: function() {
			//只有在基座运行的情况下才可以进行打印看到
			const clientInfo = plus.push.getClientInfo()
			console.log(clientInfo)
		},
		methods: {

			init() {
				if (uni.getStorageSync('userinfo')) {
					var userinfo = JSON.parse(uni.getStorageSync('userinfo'))
					if (userinfo.PERTB005ID != undefined) {
						uni.switchTab({
							url: '../tabbar/home/index'
						});
					}
				}
				// else{
				// 	uni.navigateTo({
				// 	  url: '/pages/sjhyjdl/index'
				// 	});
				// }
			},

			getToken() {
				uni.request({
					url: this.baseUrl + '/system/token',
					method: 'GET',
					success: (res) => {
						console.log(res);
						if (res.data.code == 200) {
							this.token = res.data.data
						}
					},
					fail: (res) => {
						console.log(res);
						this.$refs.uToast.show({
							title: '服务器连接超时',
							type: 'default',
							icon: false
						})
					}
				});
			},

			goLogin() {
				uni.login({
					provider: 'univerify',
					univerifyStyle: { // 自定义登录框样式
						//参考`univerifyStyle 数据结构`
						"fullScreen": true, // 是否全屏显示，默认值： false
						"title": '快速登录',
						"backgroundColor": "#ffffff", // 授权页面背景颜色，默认值：#ffffff
						// "icon": {
						// 	"path": "../../static/my/头像.png" // 自定义显示在授权框中的logo，仅支持本地图片 默认显示App logo
						// },
						"phoneNum": {
							"color": "#000000", // 手机号文字颜色 默认值：#000000
							"fontSize": "18" // 手机号字体大小 默认值：18
						},
						"slogan": {
							"color": "#8a8b90", //  slogan 字体颜色 默认值：#8a8b90
							"fontSize": "12" // slogan 字体大小 默认值：12
						},
						// 一键登录
						"authButton": {
							"normalColor": "#39B54A", // 授权按钮正常状态背景颜色 默认值：#3479f5
							"highlightColor": "#39B54A", // 授权按钮按下状态背景颜色 默认值：#2861c5（仅ios支持）
							"disabledColor": "#73aaf5", // 授权按钮不可点击时背景颜色 默认值：#73aaf5（仅ios支持）
							"textColor": "#ffffff", // 授权按钮文字颜色 默认值：#ffffff
							"title": "本机号码一键登录" // 授权按钮文案 默认值：“本机号码一键登录”
						},
						// 其他登录方式
						"otherLoginButton": {
							"visible": "true", // 是否显示其他登录按钮，默认值：true
							"normalColor": "#f8f8f8", // 其他登录按钮正常状态背景颜色 默认值：#f8f8f8
							"highlightColor": "#dedede", // 其他登录按钮按下状态背景颜色 默认值：#dedede
							"textColor": "#000000", // 其他登录按钮文字颜色 默认值：#000000
							"title": "验证码登录", // 其他登录方式按钮文字 默认值：“其他登录方式”
							"borderWidth": "1px", // 边框宽度 默认值：1px（仅ios支持）
							"borderColor": "#c5c5c5" //边框颜色 默认值： #c5c5c5（仅ios支持）
						}

					},
					success: (res) => { // 登录成功
						console.log(res);
						// let htat = this
						this.getPhoneNumberInfo(res.authResult.access_token, res.authResult.openid)
						// let openid = res.authResult.openid; //拿到openid
						// let access_token = res.authResult.access_token; //拿到access_token
						// // console.log(openid)
						// // console.log(access_token)


					},
					// 当用户点击自定义按钮时，会触发uni.login的fail回调[点击其他登录方式，可以跳转页面，或执行事件]
					fail: (res) => { // 登录失败
						console.log(res.code)
						if (res.code == "30003") {
							console.log('用户关闭验证界面');
							uni.redirectTo({
								url: '/pages/APPlogin/index?sjhdl=01'
							});
						}
						if (res.code == "30002") {
							console.log('验证码登录');
							uni.redirectTo({
								url: '/pages/APPlogin/index?sjhdl=01'
							});
						}
						if (res.code == '30001') {
							uni.showToast({
								title: '当前网络环境不支持',
								type: 'default',
								icon: false
							})
						}
						if (res.code == '30005') {
							uni.showToast({
								title: '设备不支持',
								type: 'default',
								icon: false
							})
						}
						if (res.code == '30006') {
							uni.showToast({
								title: '登陆失败',
								type: 'default',
								icon: false
							})
							uni.navigateBack()
						}
						if (res.code == '30007') {
							uni.showToast({
								title: '校验token失败',
								type: 'default',
								icon: false
							})
						}
					}
				})
			},
			//获取手机号
			getPhoneNumberInfo(access_token, openid) {
				// 在得到access_token和openid后，通过callfunction调用云函数
				uniCloud.callFunction({
					name: "getPhoneNumber",
					data: {
						access_token: access_token,
						openid: openid
					}
				}).then(res1 => {
					console.log("获取成功");
					console.log(res1);
					if (res1.result.code == 0) {
						// 获取用户的手机号
						let phoneNumber = res1.result.phoneNumber.phoneNumber;
						console.log(phoneNumber)
						// let hta = this
						this.sjhdlFun(phoneNumber)

					} else {
						uni.showToast({
							title: '手机号获取失败请切换其他登陆方式',
							type: 'default',
							icon: false
						})
					}
				}).catch((err) => {
					console.log(err)
					uni.showToast({
						title: '接口信息错误',
						type: 'default',
						icon: false
					})


				})


			},
			//手机号传给服务端做登录处理
			sjhdlFun(phoneNumber) {
				console.log(this.token)
				uni.request({
					url: this.baseUrl + '/system/autoLogin',
					method: 'POST',
					dataType: 'json',
					data: {
						PERTB005CA03: phoneNumber,
						token:this.token
					},
					success: (res) => {
						console.log(res);
						if (res.data.code == 200) {
							console.log(res.data.data)
							console.log(this.token)
							var str = JSON.stringify(res.data.data)

							uni.setStorageSync('userinfo', str);
							uni.setStorageSync('token', this.token);
							//成功关闭授权页面
							uni.closeAuthView()

							// setTimeout(() => {

							// 	uni.switchTab({
							// 		url: '/pages/tabbar/home/index'
							// 	});
							// }, 5000);
							uni.switchTab({
								url: '/pages/tabbar/home/index'
							});


						} else {
							uni.showToast({
								title: res.data.message,
								type: 'default',
								icon: false
							})

						}
						// uni.hideLoading();
					},
					fail: (res) => {
						uni.showToast({
							title: '服务器链接超时',
							type: 'default',
							icon: false
						})
						// uni.hideLoading();
					}
				})
			}


		},
	}
</script>

<style>

</style>